﻿using CleanArchitecture.Core.Interfaces;
using CleanArchitecture.Infrastructure.Entities.Business;
using CleanArchitecture.Infrastructure.Models.Business.Comments;

namespace CleanArchitecture.Infrastructure.Interfaces.Business
{
    public interface ICommentService
    {
        /// <summary>
        /// Gets all Comment Items by page 
        /// </summary>
        /// <param name="pageIndex">Page index</param>
        /// <param name="pageSize">Page size</param>
        /// <returns>News items</returns>
        IViewPagedList<Comment> GetCommentItemsByPage(CommentSearchModel searchModel);

        Comment GetCommentEntityById(int entityId);

        void AddCommentResponse(Comment comment, Comment response);

        void DeleteComment(Comment entity);
    }
}
